Here is a door bell using a cheap MP3 player module (DY-HV20T) which is readily available on various merchant sites for around £4.00. The MP3 module is controlled by a PIC16F628A processor.
The circuit is very simple requiring only a handful of components. The PIC sends a eight bit parallel word to the MP3 module and holds it for four seconds, this determines the track play length. This can be programmed to any length simply by altering the delay in the code. There are three play lists stored on the TF card, every time the push button is pressed it rotates through the playlists and increments the tracks - see the you tube demo. The tracks should be numbered sequentially starting at 00001, ending 00047. It is important you use a five bit address otherwise the MP3 player will not recognise the track.
The MP3 module has an on board class D amplifier said to produce 20 watts of audio, though it sounds more like 5 watts RMS which is still more than enough for the task in hand. The PIC asm code is listed here along with the hex code. Up to 255 tracks can be played by the MP3 player, here the code is written for 47 tracks but this can be easily altered within the code.
Here is a youtube demonstration, love it or hate it! DEMO
Barry Zarucki M0DGQ